Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

design: Add Secure Communication design doc #1186

Merged
merged 4 commits into from
Jun 21, 2019

Conversation

youngnick
Copy link
Member

Updates #881
Updates #862

Signed-off-by: Nick Young ynick@vmware.com

Updates projectcontour#881
Updates projectcontour#862

Signed-off-by: Nick Young <ynick@vmware.com>
@youngnick youngnick added kind/design Categorizes issue or PR as related to design. kind/feature Categorizes issue or PR as related to a new feature. labels Jun 20, 2019
@youngnick youngnick added this to the 0.14.0 milestone Jun 20, 2019
Copy link
Contributor

@davecheney davecheney left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Thank you.

design/secure-communication.md Outdated Show resolved Hide resolved
design/secure-communication.md Outdated Show resolved Hide resolved
design/secure-communication.md Outdated Show resolved Hide resolved
design/secure-communication.md Outdated Show resolved Hide resolved
design/secure-communication.md Outdated Show resolved Hide resolved
design/secure-communication.md Outdated Show resolved Hide resolved
design/secure-communication.md Outdated Show resolved Hide resolved

## Security Considerations

In the current design, these certs require the rolling of the deployment to change, they should be long-lived certs (days, weeks, or months), not short-lived (minutes or hours). The CA Keypair should be very long-lived and very tightly controlled, as Contour/Envoy connection security is only as secure as the CA keypair.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/these certs require the rolling of the deployment to change/the process must be restarted to pick a change to these certs/

design/secure-communication.md Outdated Show resolved Hide resolved
Copy link
Member

@stevesloka stevesloka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

Another future design might be to place Contour & Envoy in different namespaces as well to limit access to the envoy & contour secrets but doesn't change the design overall.


This applies both to Contour and Envoy.

To accomplish this, we will add the following new command line options:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be nice to also plan about configuring these in the configuration file (#1130)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. I think a note about which flags might move the config file is worth noting.

IMO not all of these flags will move to the config file, at the moment I'm only expecting that will be for things we pass to contour serve. Some of those flags go to contour bootstrap and will probably stay there as I'm not super keen in co-mingling contour bootstrap configuration cli/flags with contour serves because the former is just an optional helper.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did have a think about this, but figured that we'll just add them to the list of things that go in there when it gets started.

Signed-off-by: Nick Young <ynick@vmware.com>
Nick Young added 2 commits June 21, 2019 11:35
Signed-off-by: Nick Young <ynick@vmware.com>
Signed-off-by: Nick Young <ynick@vmware.com>
@youngnick youngnick merged commit 93674c0 into projectcontour:master Jun 21, 2019
@youngnick youngnick deleted the design/881 branch June 21, 2019 03:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/design Categorizes issue or PR as related to design. kind/feature Categorizes issue or PR as related to a new feature.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants